package com.airnewslinkosky.ticket.net.type;

import java.io.Serializable;

import com.airnewslinkosky.ticket.util.DateUtil;


public class RequestFlightOrder implements  Serializable{
	private static final long serialVersionUID = 5238952537868875339L;

	private String orderNO              ;//总订单号    
	private String flightOrderNO        ;//机票订单号  
	private String officeID             ;//机票经销商ID
	private String userID               ;//用户ID   
	
	private String flightId             ;//航班信息唯一ID   
	private String cabin                ;//舱位代码         
	private String aSPolicyID           ;//本平台政策号(本地)    
	private String ibEPolicyID          ;//一站式政策号          
	private String policyRuleID         ;//票规Id（预留）      
	private String fuelTax              ;//燃油附加费            
	private String airportTax           ;//机场建设费      
	private String ticketType           ;//输出参数时返回出票类型值：0自动出票；1手工出票
	
	
	private String passengerName	     ;//乘客姓名              
	private String passengerIDType	     ;//乘客证件类型	约定值
	private String passengerIDNO        ;//乘客证件号码                
	private String passagerType         ;//旅客类型	
	private String passengerMobile;
	private String passagerBirthday     ;//旅客出生日期     
	private String isNewPassenger;
	private String isNewContact;
	

	private String mileageCardAirline   ;//旅客常旅客所卡在航空公司代码  
	private String mileageCardNO       ;//旅客常旅客卡卡号
	private String msgType              ;//通知方式
	private String contactName          ;//联系人姓名      
	private String contactPhone         ;//联系人电话      
	private String contactEmail         ;//联系人邮箱      
	private String ibeOrderId           ;//IBE一站式订单号 
	private String ticketNO             ;//机票号          
	private String pnr                  ;//PNR号          
	
	private String ibeEPayment           ;//机票订单支付价格
	private String ibeTransactionID     ;//一站式平台流水号
	private String ibeRestrict          ;//航空公司舱位退改签规则
	private String ibeRefundPercent     ;//退票手续费百分比。%手续费，则为
	private String ibeOrderTime         ;//一站式订单生成时间，
	private String ibePayNO         ;//IBE支付平台订单号
	private String ibePayConfirmTime         ;//IBE支付确认时间，
	private String ibeReturnFeeConfirmTime         ;//一站式订单生成时间，
	
	private String isItinerary          ;//是否要行程单        
	private String flightOrderState     ;//订单状态    
	private String price                ;//政策价
	private String cabinPrice           ;//票面价格  
	private String flightAmountPrice    ;//机票总价格          
	private String payMethod            ;//支付方式            
	private String sysop     ;//系统操作员          
	private String modifyTime;//修改时间            
	private String createTime;//订单生成时间        
	private String remark    ;//备注    
	
	private String copies;//保险份数	为‘0’表示不要保险




	/**
	 * @return the orderNO
	 */
	public String getOrderNO() {
		return orderNO;
	}






	/**
	 * @param orderNO the orderNO to set
	 */
	public void setOrderNO(String orderNO) {
		this.orderNO = orderNO;
	}






	/**
	 * @return the flightOrderNO
	 */
	public String getFlightOrderNO() {
		return flightOrderNO;
	}






	/**
	 * @param flightOrderNO the flightOrderNO to set
	 */
	public void setFlightOrderNO(String flightOrderNO) {
		this.flightOrderNO = flightOrderNO;
	}






	/**
	 * @return the officeID
	 */
	public String getOfficeID() {
		return officeID;
	}






	/**
	 * @param officeID the officeID to set
	 */
	public void setOfficeID(String officeID) {
		this.officeID = officeID;
	}






	/**
	 * @return the userID
	 */
	public String getUserID() {
		return userID;
	}






	/**
	 * @param userID the userID to set
	 */
	public void setUserID(String userID) {
		this.userID = userID;
	}






	/**
	 * @return the flightId
	 */
	public String getFlightId() {
		return flightId;
	}






	/**
	 * @param flightId the flightId to set
	 */
	public void setFlightId(String flightId) {
		this.flightId = flightId;
	}






	/**
	 * @return the cabin
	 */
	public String getCabin() {
		return cabin;
	}






	/**
	 * @param cabin the cabin to set
	 */
	public void setCabin(String cabin) {
		this.cabin = cabin;
	}






	/**
	 * @return the aSPolicyID
	 */
	public String getASPolicyID() {
		return aSPolicyID;
	}






	/**
	 * @param policyID the aSPolicyID to set
	 */
	public void setASPolicyID(String policyID) {
		aSPolicyID = policyID;
	}






	/**
	 * @return the ibEPolicyID
	 */
	public String getIbEPolicyID() {
		return ibEPolicyID;
	}






	/**
	 * @param ibEPolicyID the ibEPolicyID to set
	 */
	public void setIbEPolicyID(String ibEPolicyID) {
		this.ibEPolicyID = ibEPolicyID;
	}






	/**
	 * @return the policyRuleID
	 */
	public String getPolicyRuleID() {
		return policyRuleID;
	}






	/**
	 * @param policyRuleID the policyRuleID to set
	 */
	public void setPolicyRuleID(String policyRuleID) {
		this.policyRuleID = policyRuleID;
	}






	/**
	 * @return the fuelTax
	 */
	public String getFuelTax() {
		return fuelTax;
	}






	/**
	 * @param fuelTax the fuelTax to set
	 */
	public void setFuelTax(String fuelTax) {
		this.fuelTax = fuelTax;
	}






	/**
	 * @return the airportTax
	 */
	public String getAirportTax() {
		return airportTax;
	}






	/**
	 * @param airportTax the airportTax to set
	 */
	public void setAirportTax(String airportTax) {
		this.airportTax = airportTax;
	}






	/**
	 * @return the passengerName
	 */
	public String getPassengerName() {
		return passengerName;
	}






	/**
	 * @param passengerName the passengerName to set
	 */
	public void setPassengerName(String passengerName) {
		this.passengerName = passengerName;
	}






	/**
	 * @return the passengerIDType
	 */
	public String getPassengerIDType() {
		return passengerIDType;
	}






	/**
	 * @param passengerIDType the passengerIDType to set
	 */
	public void setPassengerIDType(String passengerIDType) {
		this.passengerIDType = passengerIDType;
	}






	/**
	 * @return the passengerIDNO
	 */
	public String getPassengerIDNO() {
		return passengerIDNO;
	}






	/**
	 * @param passengerIDNO the passengerIDNO to set
	 */
	public void setPassengerIDNO(String passengerIDNO) {
		this.passengerIDNO = passengerIDNO;
	}






	/**
	 * @return the passagerType
	 */
	public String getPassagerType() {
		return passagerType;
	}






	/**
	 * @param passagerType the passagerType to set
	 */
	public void setPassagerType(String passagerType) {
		this.passagerType = passagerType;
	}






	/**
	 * @return the passengerMobile
	 */
	public String getPassengerMobile() {
		return passengerMobile;
	}






	/**
	 * @param passengerMobile the passengerMobile to set
	 */
	public void setPassengerMobile(String passengerMobile) {
		this.passengerMobile = passengerMobile;
	}






	/**
	 * @return the passagerBirthday
	 */
	public String getPassagerBirthday() {
		return passagerBirthday;
	}






	/**
	 * @param passagerBirthday the passagerBirthday to set
	 */
	public void setPassagerBirthday(String passagerBirthday) {
		this.passagerBirthday = passagerBirthday;
	}






	/**
	 * @return the isNewPassenger
	 */
	public String getIsNewPassenger() {
		return isNewPassenger;
	}






	/**
	 * @param isNewPassenger the isNewPassenger to set
	 */
	public void setIsNewPassenger(String isNewPassenger) {
		this.isNewPassenger = isNewPassenger;
	}






	/**
	 * @return the mileageCardAirline
	 */
	public String getMileageCardAirline() {
		return mileageCardAirline;
	}






	/**
	 * @param mileageCardAirline the mileageCardAirline to set
	 */
	public void setMileageCardAirline(String mileageCardAirline) {
		this.mileageCardAirline = mileageCardAirline;
	}






	/**
	 * @return the mileageCardNO
	 */
	public String getMileageCardNO() {
		return mileageCardNO;
	}






	/**
	 * @param mileageCardNO the mileageCardNO to set
	 */
	public void setMileageCardNO(String mileageCardNO) {
		this.mileageCardNO = mileageCardNO;
	}






	/**
	 * @return the msgType
	 */
	public String getMsgType() {
		return msgType;
	}






	/**
	 * @param msgType the msgType to set
	 */
	public void setMsgType(String msgType) {
		this.msgType = msgType;
	}






	/**
	 * @return the contactName
	 */
	public String getContactName() {
		return contactName;
	}






	/**
	 * @param contactName the contactName to set
	 */
	public void setContactName(String contactName) {
		this.contactName = contactName;
	}






	/**
	 * @return the contactPhone
	 */
	public String getContactPhone() {
		return contactPhone;
	}






	/**
	 * @param contactPhone the contactPhone to set
	 */
	public void setContactPhone(String contactPhone) {
		this.contactPhone = contactPhone;
	}






	/**
	 * @return the contactEmail
	 */
	public String getContactEmail() {
		return contactEmail;
	}






	/**
	 * @param contactEmail the contactEmail to set
	 */
	public void setContactEmail(String contactEmail) {
		this.contactEmail = contactEmail;
	}






	/**
	 * @return the ibeOrderId
	 */
	public String getIbeOrderId() {
		return ibeOrderId;
	}






	/**
	 * @param ibeOrderId the ibeOrderId to set
	 */
	public void setIbeOrderId(String ibeOrderId) {
		this.ibeOrderId = ibeOrderId;
	}






	/**
	 * @return the ticketNO
	 */
	public String getTicketNO() {
		return ticketNO;
	}






	/**
	 * @param ticketNO the ticketNO to set
	 */
	public void setTicketNO(String ticketNO) {
		this.ticketNO = ticketNO;
	}






	/**
	 * @return the pnr
	 */
	public String getPnr() {
		return pnr;
	}






	/**
	 * @param pnr the pnr to set
	 */
	public void setPnr(String pnr) {
		this.pnr = pnr;
	}






	/**
	 * @return the ibeEPayment
	 */
	public String getIbeEPayment() {
		return ibeEPayment;
	}






	/**
	 * @param ibeEPayment the ibeEPayment to set
	 */
	public void setIbeEPayment(String ibeEPayment) {
		this.ibeEPayment = ibeEPayment;
	}






	/**
	 * @return the ibeTransactionID
	 */
	public String getIbeTransactionID() {
		return ibeTransactionID;
	}






	/**
	 * @param ibeTransactionID the ibeTransactionID to set
	 */
	public void setIbeTransactionID(String ibeTransactionID) {
		this.ibeTransactionID = ibeTransactionID;
	}






	/**
	 * @return the ibeRestrict
	 */
	public String getIbeRestrict() {
		return ibeRestrict;
	}






	/**
	 * @param ibeRestrict the ibeRestrict to set
	 */
	public void setIbeRestrict(String ibeRestrict) {
		this.ibeRestrict = ibeRestrict;
	}






	/**
	 * @return the ibeRefundPercent
	 */
	public String getIbeRefundPercent() {
		return ibeRefundPercent;
	}






	/**
	 * @param ibeRefundPercent the ibeRefundPercent to set
	 */
	public void setIbeRefundPercent(String ibeRefundPercent) {
		this.ibeRefundPercent = ibeRefundPercent;
	}






	/**
	 * @return the ibeOrderTime
	 */
	public String getIbeOrderTime() {
		return ibeOrderTime;
	}






	/**
	 * @param ibeOrderTime the ibeOrderTime to set
	 */
	public void setIbeOrderTime(String ibeOrderTime) {
		this.ibeOrderTime = ibeOrderTime;
	}






	/**
	 * @return the ibePayNO
	 */
	public String getIbePayNO() {
		return ibePayNO;
	}






	/**
	 * @param ibePayNO the ibePayNO to set
	 */
	public void setIbePayNO(String ibePayNO) {
		this.ibePayNO = ibePayNO;
	}






	/**
	 * @return the ibePayConfirmTime
	 */
	public String getIbePayConfirmTime() {
		return ibePayConfirmTime;
	}






	/**
	 * @param ibePayConfirmTime the ibePayConfirmTime to set
	 */
	public void setIbePayConfirmTime(String ibePayConfirmTime) {
		this.ibePayConfirmTime = ibePayConfirmTime;
	}






	/**
	 * @return the ibeReturnFeeConfirmTime
	 */
	public String getIbeReturnFeeConfirmTime() {
		return ibeReturnFeeConfirmTime;
	}






	/**
	 * @param ibeReturnFeeConfirmTime the ibeReturnFeeConfirmTime to set
	 */
	public void setIbeReturnFeeConfirmTime(String ibeReturnFeeConfirmTime) {
		this.ibeReturnFeeConfirmTime = ibeReturnFeeConfirmTime;
	}






	/**
	 * @return the isItinerary
	 */
	public String getIsItinerary() {
		return isItinerary;
	}






	/**
	 * @param isItinerary the isItinerary to set
	 */
	public void setIsItinerary(String isItinerary) {
		this.isItinerary = isItinerary;
	}






	/**
	 * @return the flightOrderState
	 */
	public String getFlightOrderState() {
		return flightOrderState;
	}






	/**
	 * @param flightOrderState the flightOrderState to set
	 */
	public void setFlightOrderState(String flightOrderState) {
		this.flightOrderState = flightOrderState;
	}






	/**
	 * @return the price
	 */
	public String getPrice() {
		return price;
	}






	/**
	 * @param price the price to set
	 */
	public void setPrice(String price) {
		this.price = price;
	}






	/**
	 * @return the cabinPrice
	 */
	public String getCabinPrice() {
		return cabinPrice;
	}






	/**
	 * @param cabinPrice the cabinPrice to set
	 */
	public void setCabinPrice(String cabinPrice) {
		this.cabinPrice = cabinPrice;
	}






	/**
	 * @return the flightAmountPrice
	 */
	public String getFlightAmountPrice() {
		return flightAmountPrice;
	}






	/**
	 * @param flightAmountPrice the flightAmountPrice to set
	 */
	public void setFlightAmountPrice(String flightAmountPrice) {
		this.flightAmountPrice = flightAmountPrice;
	}






	/**
	 * @return the payMethod
	 */
	public String getPayMethod() {
		return payMethod;
	}






	/**
	 * @param payMethod the payMethod to set
	 */
	public void setPayMethod(String payMethod) {
		this.payMethod = payMethod;
	}






	/**
	 * @return the sysop
	 */
	public String getSysop() {
		return sysop;
	}






	/**
	 * @param sysop the sysop to set
	 */
	public void setSysop(String sysop) {
		this.sysop = sysop;
	}






	/**
	 * @return the modifyTime
	 */
	public String getModifyTime() {
		return modifyTime;
	}






	/**
	 * @param modifyTime the modifyTime to set
	 */
	public void setModifyTime(String modifyTime) {
		this.modifyTime = modifyTime;
	}






	/**
	 * @return the createTime
	 */
	public String getCreateTime() {
		return createTime;
	}






	/**
	 * @param createTime the createTime to set
	 */
	public void setCreateTime(String createTime) {
		this.createTime = createTime;
	}






	/**
	 * @return the remark
	 */
	public String getRemark() {
		return remark;
	}






	/**
	 * @param remark the remark to set
	 */
	public void setRemark(String remark) {
		this.remark = remark;
	}






	/**
	 * @return the isNewContact
	 */
	public String getIsNewContact() {
		return isNewContact;
	}






	/**
	 * @param isNewContact the isNewContact to set
	 */
	public void setIsNewContact(String isNewContact) {
		this.isNewContact = isNewContact;
	}






	/**
	 * @return the ticketType
	 */
	public String getTicketType() {
		return ticketType;
	}






	/**
	 * @param ticketType the ticketType to set
	 */
	public void setTicketType(String ticketType) {
		this.ticketType = ticketType;
	}






	/**
	 * @return the copies
	 */
	public String getCopies() {
		return copies;
	}






	/**
	 * @param copies the copies to set
	 */
	public void setCopies(String copies) {
		this.copies = copies;
	}






	public String getRequestData() {
		StringBuffer sb = new StringBuffer();
		sb.append("<asoc:TicketOrderV1>")
//		  	  .append("<asoc:OrderNo>").append(this.orderNO == null ? "" : this.orderNO).append("</asoc:OrderNo>")
//			  .append("<asoc:TicketOrderNo>").append(this.flightOrderNO == null ? "" : this.flightOrderNO).append("</asoc:TicketOrderNo>")
//			  .append("<asoc:OfficeID>").append(this.officeID == null ? "" : this.officeID).append("</asoc:OfficeID>")
//			  .append("<asoc:UserID>").append(this.userID == null ? "" : this.userID).append("</asoc:UserID>")
			  .append("<asoc:FlightID>").append(this.flightId == null ? "" : this.flightId).append("</asoc:FlightID>")
			  .append("<asoc:Cabin>").append(this.cabin == null ? "" : this.cabin).append("</asoc:Cabin>")
			  .append("<asoc:IBEPolicyID>").append(this.ibEPolicyID == null ? "" : this.ibEPolicyID).append("</asoc:IBEPolicyID>")
			  .append("<asoc:Price>").append(this.price == null ? "" : this.price.trim()).append("</asoc:Price>")
			  .append("<asoc:FlightAmountPrice>").append(this.flightAmountPrice == null ? "0" : this.flightAmountPrice).append("</asoc:FlightAmountPrice>")
			  
			  .append("<asoc:IsNewPassenger>").append(this.isNewPassenger == null ? "0" : this.isNewPassenger).append("</asoc:IsNewPassenger>")
			  .append("<asoc:PassengerName>").append(this.passengerName == null ? "" : this.passengerName).append("</asoc:PassengerName>")
			  .append("<asoc:PassengerIDType>").append(this.passengerIDType == null ? "0" : this.passengerIDType).append("</asoc:PassengerIDType>")
			  .append("<asoc:PassengerIDNo>").append(this.passengerIDNO == null ? "" : this.passengerIDNO).append("</asoc:PassengerIDNo>")
			  .append("<asoc:PassengerType>").append(this.passagerType == null ? "0" : this.passagerType).append("</asoc:PassengerType>")
			  .append("<asoc:PassengerBirthday>").append(this.passagerBirthday == null ? "" : this.passagerBirthday).append("</asoc:PassengerBirthday>")
			  .append("<asoc:PassengerMobile>").append(this.passengerMobile == null ? "" : this.passengerMobile).append("</asoc:PassengerMobile>")
			  
//			  .append("<asoc:MileageCardAirline>").append(this.mileageCardAirline == null ? "" : this.mileageCardAirline).append("</asoc:MileageCardAirline>")
//			  .append("<asoc:MileageCardNO>").append(this.mileageCardNO == null ? "" : this.mileageCardNO).append("</asoc:MileageCardNO>")
//			  .append("<asoc:MsgType>").append(this.msgType == null ? "0" : this.msgType).append("</asoc:MsgType>")
			  
			  
			  .append("<asoc:ContactName>").append(this.contactName == null ? "" : this.contactName).append("</asoc:ContactName>")
			  .append("<asoc:ContactPhone>").append(this.contactPhone == null ? "" : this.contactPhone).append("</asoc:ContactPhone>")
			  .append("<asoc:ContactEmail>").append(this.contactEmail == null ? "" : this.contactEmail).append("</asoc:ContactEmail>")
			  .append("<asoc:IsNewContact>").append(this.isNewContact == null ? "0" : this.isNewContact).append("</asoc:IsNewContact>")
			  
			  .append("<asoc:InvoiceType>").append(this.isItinerary == null ? "0" : this.isItinerary).append("</asoc:InvoiceType>")
			  .append("<asoc:Copies>").append(this.copies == null ? "0" : this.copies).append("</asoc:Copies>")
			  .append("<asoc:CreateTime>").append(this.createTime == null ? DateUtil.getDateTime() : this.createTime).append("</asoc:CreateTime>");

			  
		sb.append("</asoc:TicketOrderV1>");

		return sb.toString();
	}

}
